package(default_visibility = ["//:__subpackages__"])

licenses(["notice"])

# cc protos

cc_proto_library(
    name = "common_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:common_proto"],
)

cc_proto_library(
    name = "config_cc_proto",
    deps = ["@tink_base//proto:config_proto"],
)

cc_proto_library(
    name = "tink_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:tink_proto"],
)

cc_proto_library(
    name = "aes_gcm_siv_cc_proto",
    deps = ["@tink_base//proto:aes_gcm_siv_proto"],
)

cc_proto_library(
    name = "aes_siv_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:aes_siv_proto"],
)

cc_proto_library(
    name = "hmac_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:hmac_proto"],
)

cc_proto_library(
    name = "kms_envelope_cc_proto",
    deps = ["@tink_base//proto:kms_envelope_proto"],
)

cc_proto_library(
    name = "empty_cc_proto",
    deps = ["@tink_base//proto:empty_proto"],
)

cc_proto_library(
    name = "kms_aead_cc_proto",
    deps = ["@tink_base//proto:kms_aead_proto"],
)

cc_proto_library(
    name = "aes_eax_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:aes_eax_proto"],
)

cc_proto_library(
    name = "aes_gcm_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:aes_gcm_proto"],
)

cc_proto_library(
    name = "aes_ctr_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:aes_ctr_proto"],
)

cc_proto_library(
    name = "aes_ctr_hmac_aead_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:aes_ctr_hmac_aead_proto"],
)

cc_proto_library(
    name = "aes_cmac_cc_proto",
    deps = ["@tink_base//proto:aes_cmac_proto"],
)

cc_proto_library(
    name = "xchacha20_poly1305_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:xchacha20_poly1305_proto"],
)

cc_proto_library(
    name = "rsa_ssa_pkcs1_cc_proto",
    deps = ["@tink_base//proto:rsa_ssa_pkcs1_proto"],
)

cc_proto_library(
    name = "rsa_ssa_pss_cc_proto",
    deps = ["@tink_base//proto:rsa_ssa_pss_proto"],
)

cc_proto_library(
    name = "ecdsa_cc_proto",
    deps = ["@tink_base//proto:ecdsa_proto"],
)

cc_proto_library(
    name = "ed25519_cc_proto",
    deps = ["@tink_base//proto:ed25519_proto"],
)

cc_proto_library(
    name = "ecies_aead_hkdf_cc_proto",
    deps = ["@tink_base//proto:ecies_aead_hkdf_proto"],
)

cc_proto_library(
    name = "hkdf_prf_cc_proto",
    deps = ["@tink_base//proto:hkdf_prf_proto"],
)

cc_proto_library(
    name = "prf_based_deriver_cc_proto",
    deps = ["@tink_base//proto:prf_based_deriver_proto"],
)

cc_proto_library(
    name = "aes_gcm_hkdf_streaming_cc_proto",
    deps = ["@tink_base//proto:aes_gcm_hkdf_streaming_proto"],
)

cc_proto_library(
    name = "aes_cmac_prf_cc_proto",
    deps = ["@tink_base//proto:aes_cmac_prf_proto"],
)

cc_proto_library(
    name = "hmac_prf_cc_proto",
    deps = ["@tink_base//proto:hmac_prf_proto"],
)

cc_proto_library(
    name = "jwt_hmac_cc_proto",
    deps = ["@tink_base//proto:jwt_hmac_proto"],
)

cc_proto_library(
    name = "jwt_ecdsa_cc_proto",
    deps = ["@tink_base//proto:jwt_ecdsa_proto"],
)

cc_proto_library(
    name = "jwt_rsa_ssa_pkcs1_cc_proto",
    deps = ["@tink_base//proto:jwt_rsa_ssa_pkcs1_proto"],
)

cc_proto_library(
    name = "jwt_rsa_ssa_pss_cc_proto",
    deps = ["@tink_base//proto:jwt_rsa_ssa_pss_proto"],
)

cc_proto_library(
    name = "aes_ctr_hmac_streaming_cc_proto",
    deps = ["@tink_base//proto:aes_ctr_hmac_streaming_proto"],
)

cc_proto_library(
    name = "test_proto_cc_proto",
    testonly = True,
    deps = ["@tink_base//proto:test_proto_proto"],
)

cc_proto_library(
    name = "hpke_cc_proto",
    visibility = ["//visibility:public"],
    deps = ["@tink_base//proto:hpke_proto"],
)

filegroup(
    name = "public_cc_protos",
    srcs = [
        ":config_cc_proto",
        ":tink_cc_proto",
    ],
)
